
spidev_test2:     file format elf64-x86-64


Disassembly of section .init:

0000000000001000 <_init>:
    1000:	f3 0f 1e fa          	endbr64 
    1004:	48 83 ec 08          	sub    $0x8,%rsp
    1008:	48 8b 05 d9 2f 00 00 	mov    0x2fd9(%rip),%rax        # 3fe8 <__gmon_start__>
    100f:	48 85 c0             	test   %rax,%rax
    1012:	74 02                	je     1016 <_init+0x16>
    1014:	ff d0                	callq  *%rax
    1016:	48 83 c4 08          	add    $0x8,%rsp
    101a:	c3                   	retq   

Disassembly of section .plt:

0000000000001020 <.plt>:
    1020:	ff 35 62 2f 00 00    	pushq  0x2f62(%rip)        # 3f88 <_GLOBAL_OFFSET_TABLE_+0x8>
    1026:	f2 ff 25 63 2f 00 00 	bnd jmpq *0x2f63(%rip)        # 3f90 <_GLOBAL_OFFSET_TABLE_+0x10>
    102d:	0f 1f 00             	nopl   (%rax)
    1030:	f3 0f 1e fa          	endbr64 
    1034:	68 00 00 00 00       	pushq  $0x0
    1039:	f2 e9 e1 ff ff ff    	bnd jmpq 1020 <.plt>
    103f:	90                   	nop
    1040:	f3 0f 1e fa          	endbr64 
    1044:	68 01 00 00 00       	pushq  $0x1
    1049:	f2 e9 d1 ff ff ff    	bnd jmpq 1020 <.plt>
    104f:	90                   	nop
    1050:	f3 0f 1e fa          	endbr64 
    1054:	68 02 00 00 00       	pushq  $0x2
    1059:	f2 e9 c1 ff ff ff    	bnd jmpq 1020 <.plt>
    105f:	90                   	nop
    1060:	f3 0f 1e fa          	endbr64 
    1064:	68 03 00 00 00       	pushq  $0x3
    1069:	f2 e9 b1 ff ff ff    	bnd jmpq 1020 <.plt>
    106f:	90                   	nop
    1070:	f3 0f 1e fa          	endbr64 
    1074:	68 04 00 00 00       	pushq  $0x4
    1079:	f2 e9 a1 ff ff ff    	bnd jmpq 1020 <.plt>
    107f:	90                   	nop
    1080:	f3 0f 1e fa          	endbr64 
    1084:	68 05 00 00 00       	pushq  $0x5
    1089:	f2 e9 91 ff ff ff    	bnd jmpq 1020 <.plt>
    108f:	90                   	nop
    1090:	f3 0f 1e fa          	endbr64 
    1094:	68 06 00 00 00       	pushq  $0x6
    1099:	f2 e9 81 ff ff ff    	bnd jmpq 1020 <.plt>
    109f:	90                   	nop
    10a0:	f3 0f 1e fa          	endbr64 
    10a4:	68 07 00 00 00       	pushq  $0x7
    10a9:	f2 e9 71 ff ff ff    	bnd jmpq 1020 <.plt>
    10af:	90                   	nop

Disassembly of section .plt.got:

00000000000010b0 <__cxa_finalize@plt>:
    10b0:	f3 0f 1e fa          	endbr64 
    10b4:	f2 ff 25 3d 2f 00 00 	bnd jmpq *0x2f3d(%rip)        # 3ff8 <__cxa_finalize@GLIBC_2.2.5>
    10bb:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)

Disassembly of section .plt.sec:

00000000000010c0 <abort@plt>:
    10c0:	f3 0f 1e fa          	endbr64 
    10c4:	f2 ff 25 cd 2e 00 00 	bnd jmpq *0x2ecd(%rip)        # 3f98 <abort@GLIBC_2.2.5>
    10cb:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)

00000000000010d0 <puts@plt>:
    10d0:	f3 0f 1e fa          	endbr64 
    10d4:	f2 ff 25 c5 2e 00 00 	bnd jmpq *0x2ec5(%rip)        # 3fa0 <puts@GLIBC_2.2.5>
    10db:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)

00000000000010e0 <__stack_chk_fail@plt>:
    10e0:	f3 0f 1e fa          	endbr64 
    10e4:	f2 ff 25 bd 2e 00 00 	bnd jmpq *0x2ebd(%rip)        # 3fa8 <__stack_chk_fail@GLIBC_2.4>
    10eb:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)

00000000000010f0 <printf@plt>:
    10f0:	f3 0f 1e fa          	endbr64 
    10f4:	f2 ff 25 b5 2e 00 00 	bnd jmpq *0x2eb5(%rip)        # 3fb0 <printf@GLIBC_2.2.5>
    10fb:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)

0000000000001100 <ioctl@plt>:
    1100:	f3 0f 1e fa          	endbr64 
    1104:	f2 ff 25 ad 2e 00 00 	bnd jmpq *0x2ead(%rip)        # 3fb8 <ioctl@GLIBC_2.2.5>
    110b:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)

0000000000001110 <close@plt>:
    1110:	f3 0f 1e fa          	endbr64 
    1114:	f2 ff 25 a5 2e 00 00 	bnd jmpq *0x2ea5(%rip)        # 3fc0 <close@GLIBC_2.2.5>
    111b:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)

0000000000001120 <open@plt>:
    1120:	f3 0f 1e fa          	endbr64 
    1124:	f2 ff 25 9d 2e 00 00 	bnd jmpq *0x2e9d(%rip)        # 3fc8 <open@GLIBC_2.2.5>
    112b:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)

0000000000001130 <perror@plt>:
    1130:	f3 0f 1e fa          	endbr64 
    1134:	f2 ff 25 95 2e 00 00 	bnd jmpq *0x2e95(%rip)        # 3fd0 <perror@GLIBC_2.2.5>
    113b:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)

Disassembly of section .text:

0000000000001140 <_start>:
    1140:	f3 0f 1e fa          	endbr64 
    1144:	31 ed                	xor    %ebp,%ebp
    1146:	49 89 d1             	mov    %rdx,%r9
    1149:	5e                   	pop    %rsi
    114a:	48 89 e2             	mov    %rsp,%rdx
    114d:	48 83 e4 f0          	and    $0xfffffffffffffff0,%rsp
    1151:	50                   	push   %rax
    1152:	54                   	push   %rsp
    1153:	4c 8d 05 96 04 00 00 	lea    0x496(%rip),%r8        # 15f0 <__libc_csu_fini>
    115a:	48 8d 0d 1f 04 00 00 	lea    0x41f(%rip),%rcx        # 1580 <__libc_csu_init>
    1161:	48 8d 3d 32 02 00 00 	lea    0x232(%rip),%rdi        # 139a <main>
    1168:	ff 15 72 2e 00 00    	callq  *0x2e72(%rip)        # 3fe0 <__libc_start_main@GLIBC_2.2.5>
    116e:	f4                   	hlt    
    116f:	90                   	nop

0000000000001170 <deregister_tm_clones>:
    1170:	48 8d 3d a9 2e 00 00 	lea    0x2ea9(%rip),%rdi        # 4020 <__TMC_END__>
    1177:	48 8d 05 a2 2e 00 00 	lea    0x2ea2(%rip),%rax        # 4020 <__TMC_END__>
    117e:	48 39 f8             	cmp    %rdi,%rax
    1181:	74 15                	je     1198 <deregister_tm_clones+0x28>
    1183:	48 8b 05 4e 2e 00 00 	mov    0x2e4e(%rip),%rax        # 3fd8 <_ITM_deregisterTMCloneTable>
    118a:	48 85 c0             	test   %rax,%rax
    118d:	74 09                	je     1198 <deregister_tm_clones+0x28>
    118f:	ff e0                	jmpq   *%rax
    1191:	0f 1f 80 00 00 00 00 	nopl   0x0(%rax)
    1198:	c3                   	retq   
    1199:	0f 1f 80 00 00 00 00 	nopl   0x0(%rax)

00000000000011a0 <register_tm_clones>:
    11a0:	48 8d 3d 79 2e 00 00 	lea    0x2e79(%rip),%rdi        # 4020 <__TMC_END__>
    11a7:	48 8d 35 72 2e 00 00 	lea    0x2e72(%rip),%rsi        # 4020 <__TMC_END__>
    11ae:	48 29 fe             	sub    %rdi,%rsi
    11b1:	48 89 f0             	mov    %rsi,%rax
    11b4:	48 c1 ee 3f          	shr    $0x3f,%rsi
    11b8:	48 c1 f8 03          	sar    $0x3,%rax
    11bc:	48 01 c6             	add    %rax,%rsi
    11bf:	48 d1 fe             	sar    %rsi
    11c2:	74 14                	je     11d8 <register_tm_clones+0x38>
    11c4:	48 8b 05 25 2e 00 00 	mov    0x2e25(%rip),%rax        # 3ff0 <_ITM_registerTMCloneTable>
    11cb:	48 85 c0             	test   %rax,%rax
    11ce:	74 08                	je     11d8 <register_tm_clones+0x38>
    11d0:	ff e0                	jmpq   *%rax
    11d2:	66 0f 1f 44 00 00    	nopw   0x0(%rax,%rax,1)
    11d8:	c3                   	retq   
    11d9:	0f 1f 80 00 00 00 00 	nopl   0x0(%rax)

00000000000011e0 <__do_global_dtors_aux>:
    11e0:	f3 0f 1e fa          	endbr64 
    11e4:	80 3d 35 2e 00 00 00 	cmpb   $0x0,0x2e35(%rip)        # 4020 <__TMC_END__>
    11eb:	75 2b                	jne    1218 <__do_global_dtors_aux+0x38>
    11ed:	55                   	push   %rbp
    11ee:	48 83 3d 02 2e 00 00 	cmpq   $0x0,0x2e02(%rip)        # 3ff8 <__cxa_finalize@GLIBC_2.2.5>
    11f5:	00 
    11f6:	48 89 e5             	mov    %rsp,%rbp
    11f9:	74 0c                	je     1207 <__do_global_dtors_aux+0x27>
    11fb:	48 8b 3d 06 2e 00 00 	mov    0x2e06(%rip),%rdi        # 4008 <__dso_handle>
    1202:	e8 a9 fe ff ff       	callq  10b0 <__cxa_finalize@plt>
    1207:	e8 64 ff ff ff       	callq  1170 <deregister_tm_clones>
    120c:	c6 05 0d 2e 00 00 01 	movb   $0x1,0x2e0d(%rip)        # 4020 <__TMC_END__>
    1213:	5d                   	pop    %rbp
    1214:	c3                   	retq   
    1215:	0f 1f 00             	nopl   (%rax)
    1218:	c3                   	retq   
    1219:	0f 1f 80 00 00 00 00 	nopl   0x0(%rax)

0000000000001220 <frame_dummy>:
    1220:	f3 0f 1e fa          	endbr64 
    1224:	e9 77 ff ff ff       	jmpq   11a0 <register_tm_clones>

0000000000001229 <pabort>:
    1229:	f3 0f 1e fa          	endbr64 
    122d:	55                   	push   %rbp
    122e:	48 89 e5             	mov    %rsp,%rbp
    1231:	48 83 ec 10          	sub    $0x10,%rsp
    1235:	48 89 7d f8          	mov    %rdi,-0x8(%rbp)
    1239:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    123d:	48 89 c7             	mov    %rax,%rdi
    1240:	e8 eb fe ff ff       	callq  1130 <perror@plt>
    1245:	e8 76 fe ff ff       	callq  10c0 <abort@plt>

000000000000124a <transfer>:
    124a:	f3 0f 1e fa          	endbr64 
    124e:	55                   	push   %rbp
    124f:	48 89 e5             	mov    %rsp,%rbp
    1252:	48 83 ec 70          	sub    $0x70,%rsp
    1256:	89 7d 9c             	mov    %edi,-0x64(%rbp)
    1259:	64 48 8b 04 25 28 00 	mov    %fs:0x28,%rax
    1260:	00 00 
    1262:	48 89 45 f8          	mov    %rax,-0x8(%rbp)
    1266:	31 c0                	xor    %eax,%eax
    1268:	c7 45 f0 ab 00 00 00 	movl   $0xab,-0x10(%rbp)
    126f:	c7 45 f4 00 00 00 00 	movl   $0x0,-0xc(%rbp)
    1276:	48 8d 45 f0          	lea    -0x10(%rbp),%rax
    127a:	48 89 45 b0          	mov    %rax,-0x50(%rbp)
    127e:	48 8d 45 f4          	lea    -0xc(%rbp),%rax
    1282:	48 89 45 b8          	mov    %rax,-0x48(%rbp)
    1286:	c7 45 c0 04 00 00 00 	movl   $0x4,-0x40(%rbp)
    128d:	8b 05 81 2d 00 00    	mov    0x2d81(%rip),%eax        # 4014 <speed>
    1293:	89 45 c4             	mov    %eax,-0x3c(%rbp)
    1296:	0f b6 05 73 2d 00 00 	movzbl 0x2d73(%rip),%eax        # 4010 <bits>
    129d:	88 45 ca             	mov    %al,-0x36(%rbp)
    12a0:	66 c7 45 c8 00 00    	movw   $0x0,-0x38(%rbp)
    12a6:	c6 45 cb 00          	movb   $0x0,-0x35(%rbp)
    12aa:	48 8d 45 f0          	lea    -0x10(%rbp),%rax
    12ae:	48 89 45 d0          	mov    %rax,-0x30(%rbp)
    12b2:	48 8d 45 f4          	lea    -0xc(%rbp),%rax
    12b6:	48 89 45 d8          	mov    %rax,-0x28(%rbp)
    12ba:	c7 45 e0 04 00 00 00 	movl   $0x4,-0x20(%rbp)
    12c1:	8b 05 4d 2d 00 00    	mov    0x2d4d(%rip),%eax        # 4014 <speed>
    12c7:	89 45 e4             	mov    %eax,-0x1c(%rbp)
    12ca:	0f b6 05 3f 2d 00 00 	movzbl 0x2d3f(%rip),%eax        # 4010 <bits>
    12d1:	88 45 ea             	mov    %al,-0x16(%rbp)
    12d4:	66 c7 45 e8 00 00    	movw   $0x0,-0x18(%rbp)
    12da:	c6 45 eb 00          	movb   $0x0,-0x15(%rbp)
    12de:	48 8d 55 b0          	lea    -0x50(%rbp),%rdx
    12e2:	8b 45 9c             	mov    -0x64(%rbp),%eax
    12e5:	be 00 6b 40 40       	mov    $0x40406b00,%esi
    12ea:	89 c7                	mov    %eax,%edi
    12ec:	b8 00 00 00 00       	mov    $0x0,%eax
    12f1:	e8 0a fe ff ff       	callq  1100 <ioctl@plt>
    12f6:	89 45 ac             	mov    %eax,-0x54(%rbp)
    12f9:	83 7d ac 00          	cmpl   $0x0,-0x54(%rbp)
    12fd:	7f 0c                	jg     130b <transfer+0xc1>
    12ff:	48 8d 3d 0d 0d 00 00 	lea    0xd0d(%rip),%rdi        # 2013 <_IO_stdin_used+0x13>
    1306:	e8 1e ff ff ff       	callq  1229 <pabort>
    130b:	c7 45 ac 00 00 00 00 	movl   $0x0,-0x54(%rbp)
    1312:	eb 5b                	jmp    136f <transfer+0x125>
    1314:	8b 4d ac             	mov    -0x54(%rbp),%ecx
    1317:	48 63 c1             	movslq %ecx,%rax
    131a:	48 69 c0 ab aa aa 2a 	imul   $0x2aaaaaab,%rax,%rax
    1321:	48 c1 e8 20          	shr    $0x20,%rax
    1325:	48 89 c2             	mov    %rax,%rdx
    1328:	89 c8                	mov    %ecx,%eax
    132a:	c1 f8 1f             	sar    $0x1f,%eax
    132d:	29 c2                	sub    %eax,%edx
    132f:	89 d0                	mov    %edx,%eax
    1331:	01 c0                	add    %eax,%eax
    1333:	01 d0                	add    %edx,%eax
    1335:	01 c0                	add    %eax,%eax
    1337:	29 c1                	sub    %eax,%ecx
    1339:	89 ca                	mov    %ecx,%edx
    133b:	85 d2                	test   %edx,%edx
    133d:	75 0c                	jne    134b <transfer+0x101>
    133f:	48 8d 3d e4 0c 00 00 	lea    0xce4(%rip),%rdi        # 202a <_IO_stdin_used+0x2a>
    1346:	e8 85 fd ff ff       	callq  10d0 <puts@plt>
    134b:	8b 45 ac             	mov    -0x54(%rbp),%eax
    134e:	48 98                	cltq   
    1350:	0f b6 44 05 f4       	movzbl -0xc(%rbp,%rax,1),%eax
    1355:	0f b6 c0             	movzbl %al,%eax
    1358:	89 c6                	mov    %eax,%esi
    135a:	48 8d 3d ca 0c 00 00 	lea    0xcca(%rip),%rdi        # 202b <_IO_stdin_used+0x2b>
    1361:	b8 00 00 00 00       	mov    $0x0,%eax
    1366:	e8 85 fd ff ff       	callq  10f0 <printf@plt>
    136b:	83 45 ac 01          	addl   $0x1,-0x54(%rbp)
    136f:	8b 45 ac             	mov    -0x54(%rbp),%eax
    1372:	83 f8 03             	cmp    $0x3,%eax
    1375:	76 9d                	jbe    1314 <transfer+0xca>
    1377:	48 8d 3d ac 0c 00 00 	lea    0xcac(%rip),%rdi        # 202a <_IO_stdin_used+0x2a>
    137e:	e8 4d fd ff ff       	callq  10d0 <puts@plt>
    1383:	90                   	nop
    1384:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    1388:	64 48 33 04 25 28 00 	xor    %fs:0x28,%rax
    138f:	00 00 
    1391:	74 05                	je     1398 <transfer+0x14e>
    1393:	e8 48 fd ff ff       	callq  10e0 <__stack_chk_fail@plt>
    1398:	c9                   	leaveq 
    1399:	c3                   	retq   

000000000000139a <main>:
    139a:	f3 0f 1e fa          	endbr64 
    139e:	55                   	push   %rbp
    139f:	48 89 e5             	mov    %rsp,%rbp
    13a2:	48 83 ec 10          	sub    $0x10,%rsp
    13a6:	c7 45 f8 00 00 00 00 	movl   $0x0,-0x8(%rbp)
    13ad:	48 8b 05 64 2c 00 00 	mov    0x2c64(%rip),%rax        # 4018 <device>
    13b4:	be 02 00 00 00       	mov    $0x2,%esi
    13b9:	48 89 c7             	mov    %rax,%rdi
    13bc:	b8 00 00 00 00       	mov    $0x0,%eax
    13c1:	e8 5a fd ff ff       	callq  1120 <open@plt>
    13c6:	89 45 fc             	mov    %eax,-0x4(%rbp)
    13c9:	83 7d fc 00          	cmpl   $0x0,-0x4(%rbp)
    13cd:	79 0c                	jns    13db <main+0x41>
    13cf:	48 8d 3d 5b 0c 00 00 	lea    0xc5b(%rip),%rdi        # 2031 <_IO_stdin_used+0x31>
    13d6:	e8 4e fe ff ff       	callq  1229 <pabort>
    13db:	8b 45 fc             	mov    -0x4(%rbp),%eax
    13de:	48 8d 15 3c 2c 00 00 	lea    0x2c3c(%rip),%rdx        # 4021 <mode>
    13e5:	be 01 6b 01 40       	mov    $0x40016b01,%esi
    13ea:	89 c7                	mov    %eax,%edi
    13ec:	b8 00 00 00 00       	mov    $0x0,%eax
    13f1:	e8 0a fd ff ff       	callq  1100 <ioctl@plt>
    13f6:	89 45 f8             	mov    %eax,-0x8(%rbp)
    13f9:	83 7d f8 ff          	cmpl   $0xffffffff,-0x8(%rbp)
    13fd:	75 0c                	jne    140b <main+0x71>
    13ff:	48 8d 3d 3d 0c 00 00 	lea    0xc3d(%rip),%rdi        # 2043 <_IO_stdin_used+0x43>
    1406:	e8 1e fe ff ff       	callq  1229 <pabort>
    140b:	8b 45 fc             	mov    -0x4(%rbp),%eax
    140e:	48 8d 15 0c 2c 00 00 	lea    0x2c0c(%rip),%rdx        # 4021 <mode>
    1415:	be 01 6b 01 80       	mov    $0x80016b01,%esi
    141a:	89 c7                	mov    %eax,%edi
    141c:	b8 00 00 00 00       	mov    $0x0,%eax
    1421:	e8 da fc ff ff       	callq  1100 <ioctl@plt>
    1426:	89 45 f8             	mov    %eax,-0x8(%rbp)
    1429:	83 7d f8 ff          	cmpl   $0xffffffff,-0x8(%rbp)
    142d:	75 0c                	jne    143b <main+0xa1>
    142f:	48 8d 3d 20 0c 00 00 	lea    0xc20(%rip),%rdi        # 2056 <_IO_stdin_used+0x56>
    1436:	e8 ee fd ff ff       	callq  1229 <pabort>
    143b:	8b 45 fc             	mov    -0x4(%rbp),%eax
    143e:	48 8d 15 cb 2b 00 00 	lea    0x2bcb(%rip),%rdx        # 4010 <bits>
    1445:	be 03 6b 01 40       	mov    $0x40016b03,%esi
    144a:	89 c7                	mov    %eax,%edi
    144c:	b8 00 00 00 00       	mov    $0x0,%eax
    1451:	e8 aa fc ff ff       	callq  1100 <ioctl@plt>
    1456:	89 45 f8             	mov    %eax,-0x8(%rbp)
    1459:	83 7d f8 ff          	cmpl   $0xffffffff,-0x8(%rbp)
    145d:	75 0c                	jne    146b <main+0xd1>
    145f:	48 8d 3d 03 0c 00 00 	lea    0xc03(%rip),%rdi        # 2069 <_IO_stdin_used+0x69>
    1466:	e8 be fd ff ff       	callq  1229 <pabort>
    146b:	8b 45 fc             	mov    -0x4(%rbp),%eax
    146e:	48 8d 15 9b 2b 00 00 	lea    0x2b9b(%rip),%rdx        # 4010 <bits>
    1475:	be 03 6b 01 80       	mov    $0x80016b03,%esi
    147a:	89 c7                	mov    %eax,%edi
    147c:	b8 00 00 00 00       	mov    $0x0,%eax
    1481:	e8 7a fc ff ff       	callq  1100 <ioctl@plt>
    1486:	89 45 f8             	mov    %eax,-0x8(%rbp)
    1489:	83 7d f8 ff          	cmpl   $0xffffffff,-0x8(%rbp)
    148d:	75 0c                	jne    149b <main+0x101>
    148f:	48 8d 3d eb 0b 00 00 	lea    0xbeb(%rip),%rdi        # 2081 <_IO_stdin_used+0x81>
    1496:	e8 8e fd ff ff       	callq  1229 <pabort>
    149b:	8b 45 fc             	mov    -0x4(%rbp),%eax
    149e:	48 8d 15 6f 2b 00 00 	lea    0x2b6f(%rip),%rdx        # 4014 <speed>
    14a5:	be 04 6b 04 40       	mov    $0x40046b04,%esi
    14aa:	89 c7                	mov    %eax,%edi
    14ac:	b8 00 00 00 00       	mov    $0x0,%eax
    14b1:	e8 4a fc ff ff       	callq  1100 <ioctl@plt>
    14b6:	89 45 f8             	mov    %eax,-0x8(%rbp)
    14b9:	83 7d f8 ff          	cmpl   $0xffffffff,-0x8(%rbp)
    14bd:	75 0c                	jne    14cb <main+0x131>
    14bf:	48 8d 3d d3 0b 00 00 	lea    0xbd3(%rip),%rdi        # 2099 <_IO_stdin_used+0x99>
    14c6:	e8 5e fd ff ff       	callq  1229 <pabort>
    14cb:	8b 45 fc             	mov    -0x4(%rbp),%eax
    14ce:	48 8d 15 3f 2b 00 00 	lea    0x2b3f(%rip),%rdx        # 4014 <speed>
    14d5:	be 04 6b 04 80       	mov    $0x80046b04,%esi
    14da:	89 c7                	mov    %eax,%edi
    14dc:	b8 00 00 00 00       	mov    $0x0,%eax
    14e1:	e8 1a fc ff ff       	callq  1100 <ioctl@plt>
    14e6:	89 45 f8             	mov    %eax,-0x8(%rbp)
    14e9:	83 7d f8 ff          	cmpl   $0xffffffff,-0x8(%rbp)
    14ed:	75 0c                	jne    14fb <main+0x161>
    14ef:	48 8d 3d ba 0b 00 00 	lea    0xbba(%rip),%rdi        # 20b0 <_IO_stdin_used+0xb0>
    14f6:	e8 2e fd ff ff       	callq  1229 <pabort>
    14fb:	0f b6 05 1f 2b 00 00 	movzbl 0x2b1f(%rip),%eax        # 4021 <mode>
    1502:	0f b6 c0             	movzbl %al,%eax
    1505:	89 c6                	mov    %eax,%esi
    1507:	48 8d 3d b9 0b 00 00 	lea    0xbb9(%rip),%rdi        # 20c7 <_IO_stdin_used+0xc7>
    150e:	b8 00 00 00 00       	mov    $0x0,%eax
    1513:	e8 d8 fb ff ff       	callq  10f0 <printf@plt>
    1518:	0f b6 05 f1 2a 00 00 	movzbl 0x2af1(%rip),%eax        # 4010 <bits>
    151f:	0f b6 c0             	movzbl %al,%eax
    1522:	89 c6                	mov    %eax,%esi
    1524:	48 8d 3d aa 0b 00 00 	lea    0xbaa(%rip),%rdi        # 20d5 <_IO_stdin_used+0xd5>
    152b:	b8 00 00 00 00       	mov    $0x0,%eax
    1530:	e8 bb fb ff ff       	callq  10f0 <printf@plt>
    1535:	8b 05 d9 2a 00 00    	mov    0x2ad9(%rip),%eax        # 4014 <speed>
    153b:	89 c0                	mov    %eax,%eax
    153d:	48 69 c0 d3 4d 62 10 	imul   $0x10624dd3,%rax,%rax
    1544:	48 c1 e8 20          	shr    $0x20,%rax
    1548:	89 c2                	mov    %eax,%edx
    154a:	c1 ea 06             	shr    $0x6,%edx
    154d:	8b 05 c1 2a 00 00    	mov    0x2ac1(%rip),%eax        # 4014 <speed>
    1553:	89 c6                	mov    %eax,%esi
    1555:	48 8d 3d 8c 0b 00 00 	lea    0xb8c(%rip),%rdi        # 20e8 <_IO_stdin_used+0xe8>
    155c:	b8 00 00 00 00       	mov    $0x0,%eax
    1561:	e8 8a fb ff ff       	callq  10f0 <printf@plt>
    1566:	8b 45 fc             	mov    -0x4(%rbp),%eax
    1569:	89 c7                	mov    %eax,%edi
    156b:	e8 da fc ff ff       	callq  124a <transfer>
    1570:	8b 45 fc             	mov    -0x4(%rbp),%eax
    1573:	89 c7                	mov    %eax,%edi
    1575:	e8 96 fb ff ff       	callq  1110 <close@plt>
    157a:	8b 45 f8             	mov    -0x8(%rbp),%eax
    157d:	c9                   	leaveq 
    157e:	c3                   	retq   
    157f:	90                   	nop

0000000000001580 <__libc_csu_init>:
    1580:	f3 0f 1e fa          	endbr64 
    1584:	41 57                	push   %r15
    1586:	4c 8d 3d e3 27 00 00 	lea    0x27e3(%rip),%r15        # 3d70 <__frame_dummy_init_array_entry>
    158d:	41 56                	push   %r14
    158f:	49 89 d6             	mov    %rdx,%r14
    1592:	41 55                	push   %r13
    1594:	49 89 f5             	mov    %rsi,%r13
    1597:	41 54                	push   %r12
    1599:	41 89 fc             	mov    %edi,%r12d
    159c:	55                   	push   %rbp
    159d:	48 8d 2d d4 27 00 00 	lea    0x27d4(%rip),%rbp        # 3d78 <__do_global_dtors_aux_fini_array_entry>
    15a4:	53                   	push   %rbx
    15a5:	4c 29 fd             	sub    %r15,%rbp
    15a8:	48 83 ec 08          	sub    $0x8,%rsp
    15ac:	e8 4f fa ff ff       	callq  1000 <_init>
    15b1:	48 c1 fd 03          	sar    $0x3,%rbp
    15b5:	74 1f                	je     15d6 <__libc_csu_init+0x56>
    15b7:	31 db                	xor    %ebx,%ebx
    15b9:	0f 1f 80 00 00 00 00 	nopl   0x0(%rax)
    15c0:	4c 89 f2             	mov    %r14,%rdx
    15c3:	4c 89 ee             	mov    %r13,%rsi
    15c6:	44 89 e7             	mov    %r12d,%edi
    15c9:	41 ff 14 df          	callq  *(%r15,%rbx,8)
    15cd:	48 83 c3 01          	add    $0x1,%rbx
    15d1:	48 39 dd             	cmp    %rbx,%rbp
    15d4:	75 ea                	jne    15c0 <__libc_csu_init+0x40>
    15d6:	48 83 c4 08          	add    $0x8,%rsp
    15da:	5b                   	pop    %rbx
    15db:	5d                   	pop    %rbp
    15dc:	41 5c                	pop    %r12
    15de:	41 5d                	pop    %r13
    15e0:	41 5e                	pop    %r14
    15e2:	41 5f                	pop    %r15
    15e4:	c3                   	retq   
    15e5:	66 66 2e 0f 1f 84 00 	data16 nopw %cs:0x0(%rax,%rax,1)
    15ec:	00 00 00 00 

00000000000015f0 <__libc_csu_fini>:
    15f0:	f3 0f 1e fa          	endbr64 
    15f4:	c3                   	retq   

Disassembly of section .fini:

00000000000015f8 <_fini>:
    15f8:	f3 0f 1e fa          	endbr64 
    15fc:	48 83 ec 08          	sub    $0x8,%rsp
    1600:	48 83 c4 08          	add    $0x8,%rsp
    1604:	c3                   	retq   
